home *** CD-ROM | disk | FTP | other *** search
/ Mobiclic 122 / MOBICLIC 122.ISO / mac / DATA / ENG122 / ENG122_00 / ENG122_00.swf / scripts / frame_1 / DoAction.as
Text File  |  2010-02-16  |  49KB  |  1,904 lines

  1. function initKeyPause()
  2. {
  3.    gPauseOn = 0;
  4.    gPauseSpaceOn = 0;
  5.    gPauseSpaceEnCours = 0;
  6. }
  7. function initGen()
  8. {
  9.    this._lockroot = true;
  10.    gClipGen = this;
  11.    Stage.showMenu = false;
  12.    gLangue = "FR";
  13.    gMusicOn = 1;
  14.    gSousTitre = 0;
  15.    gST = 0;
  16.    gVolume = 100;
  17.    gWidth = moduleInfo.returnNodeByPath("BackOffice").firstChild.attributes.width;
  18.    gHeight = moduleInfo.returnNodeByPath("BackOffice").firstChild.attributes.height;
  19.    if(gWidth == undefined)
  20.    {
  21.       gWidth = 800;
  22.    }
  23.    else
  24.    {
  25.       gWidth = Number(gWidth);
  26.    }
  27.    if(gHeight == undefined)
  28.    {
  29.       gHeight = 600;
  30.    }
  31.    else
  32.    {
  33.       gHeight = Number(gHeight);
  34.    }
  35.    initKeyPause();
  36. }
  37. function testeDebutCommentSpecial()
  38. {
  39.    switch(gCommentOn.id.split("_")[gCommentOn.id.split("_").length - 1])
  40.    {
  41.       case "bz":
  42.       case "BZ":
  43.          trace("-------  BZ on-----------");
  44.          DesactiveOEIL();
  45.          if(BT_OEIL.gEtat !== 3)
  46.          {
  47.             trace("E3");
  48.             BT_OEIL.gotoAndPlay("E3");
  49.          }
  50.          else
  51.          {
  52.             trace("PARLE");
  53.             BT_OEIL.OEIL_P.gotoAndPlay("parle");
  54.          }
  55.          break;
  56.       case "ze":
  57.       case "ZE":
  58.          trace("-------  ZE on-----------");
  59.          DesactiveOEIL();
  60.          if(BT_OEIL.gEtat !== 3)
  61.          {
  62.             BT_OEIL.gotoAndPlay("E3");
  63.          }
  64.          else
  65.          {
  66.             BT_OEIL.OEIL_P.gotoAndPlay("parle");
  67.          }
  68.          afficherRolls();
  69.    }
  70. }
  71. function testeFinCommentSpecial()
  72. {
  73.    switch(gCommentOn.id.split("_")[gCommentOn.id.split("_").length - 1])
  74.    {
  75.       case "bz":
  76.       case "BZ":
  77.          trace("-------  BZ off-----------");
  78.          ActiveOEIL();
  79.          BT_OEIL.OEIL_P.gotoAndPlay("rentre");
  80.          BT_OEIL.gClicOn = undefined;
  81.          break;
  82.       case "ze":
  83.       case "ZE":
  84.          trace("-------  ZE off-----------");
  85.          ActiveOEIL();
  86.          BT_OEIL.OEIL_P.gotoAndPlay("rentre");
  87.          BT_OEIL.gClicOn = undefined;
  88.          masquerRolls();
  89.    }
  90. }
  91. function stopComment()
  92. {
  93.    if(gCommentOn !== undefined)
  94.    {
  95.       testeFinCommentSpecial();
  96.       delete gCommentOn.onSoundComplete;
  97.       gCommentOn.stop();
  98.       gCommentOn = undefined;
  99.       if(gPauseOn == undefined || gPauseOn == 0)
  100.       {
  101.          removeMovieClip("mcClicZap");
  102.       }
  103.       gBlockST = undefined;
  104.       gereTextes.masqueST();
  105.       if(gClipTarget !== undefined)
  106.       {
  107.          gClipTarget.gotoAndStop(gClipTargetLabel);
  108.          gClipTarget = undefined;
  109.          gClipTargetLabel = undefined;
  110.       }
  111.    }
  112. }
  113. function pauseComment()
  114. {
  115.    trace("pauseComment " + gCommentOn);
  116.    if(gCommentOn !== undefined)
  117.    {
  118.       gCommentOn.stop();
  119.       mcClicZap._visible = false;
  120.    }
  121. }
  122. function continueComment()
  123. {
  124.    trace("continueComment " + gCommentOn);
  125.    if(gCommentOn !== undefined)
  126.    {
  127.       gCommentOn.start(gCommentOn.position / 1000);
  128.       mcClicZap._visible = true;
  129.    }
  130. }
  131. function joueSon(p)
  132. {
  133.    var _loc4_ = p.nomSon;
  134.    gSoundString = _loc4_;
  135.    if(p.mc !== undefined)
  136.    {
  137.       gClipRef = p.mc;
  138.    }
  139.    else
  140.    {
  141.       gClipRef = _root;
  142.    }
  143.    trace("p.mc" + p.mc);
  144.    if(p.zapBlock !== undefined)
  145.    {
  146.       gClicZap = p.zapBlock;
  147.    }
  148.    else
  149.    {
  150.       gClicZap = "ZAP_BLOCK";
  151.    }
  152.    if(p.actionFin !== undefined)
  153.    {
  154.       gActionFinSon = p.actionFin;
  155.    }
  156.    else
  157.    {
  158.       gActionFinSon = "PLAY";
  159.    }
  160.    stopComment();
  161.    if(p.mcCible !== undefined)
  162.    {
  163.       if(typeof p.mcCible == "movieclip")
  164.       {
  165.          gClipTarget = p.mcCible;
  166.       }
  167.       else
  168.       {
  169.          gClipTarget = gClipRef[p.mcCible];
  170.       }
  171.       if(p.mcLabelOut !== undefined)
  172.       {
  173.          gClipTargetLabel = p.mcLabelOut;
  174.       }
  175.       else
  176.       {
  177.          gClipTargetLabel = gClipTarget._currentframe;
  178.       }
  179.       if(p.mcLabelIn !== undefined)
  180.       {
  181.          gClipTarget.gotoAndPlay(p.mcLabelIn);
  182.       }
  183.       else
  184.       {
  185.          gClipTarget.gotoAndPlay("parle");
  186.       }
  187.    }
  188.    gCommentName = "S_" + gLangue + "_" + gModuleName + "_";
  189.    trace("HERE JS");
  190.    trace("joueSon " + gCommentName + _loc4_);
  191.    mySound = soundObjects[gCommentName + _loc4_];
  192.    if(mySound !== undefined)
  193.    {
  194.       gCommentOn = mySound;
  195.       gCommentOn.p = p;
  196.       gCommentOn.id = gCommentName + _loc4_;
  197.       testeDebutCommentSpecial();
  198.       if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  199.       {
  200.          soundObjects[gMusic].setVolume(gVolume * 40 / 100);
  201.       }
  202.       mySound.setVolume(gVolume);
  203.       if(gCommentOnPausePos !== undefined)
  204.       {
  205.          mySound.start(gCommentOnPausePos / 1000);
  206.          gCommentOnPause = undefined;
  207.          gCommentOnPausePos = undefined;
  208.       }
  209.       else
  210.       {
  211.          mySound.start();
  212.       }
  213.    }
  214.    else
  215.    {
  216.       trace("______" + getSoundByID(gCommentName + _loc4_) + gCommentName);
  217.       var _loc5_ = getSoundByID(gCommentName + _loc4_);
  218.       if(_loc5_ !== undefined)
  219.       {
  220.          mySound = new Sound();
  221.          mySound.onLoad = function(success)
  222.          {
  223.             if(success)
  224.             {
  225.                if(gCommentOnPausePos !== undefined)
  226.                {
  227.                   mySound.start(gCommentOnPausePos / 1000);
  228.                   gCommentOnPause = undefined;
  229.                   gCommentOnPausePos = undefined;
  230.                }
  231.                else
  232.                {
  233.                   mySound.start();
  234.                }
  235.             }
  236.          };
  237.          mySound.loadSound(this.gModulePath + _loc5_.attributes.src,true);
  238.          gCommentOn = mySound;
  239.          gCommentOn.p = p;
  240.          gCommentOn.id = gCommentName + _loc4_;
  241.          testeDebutCommentSpecial();
  242.          if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  243.          {
  244.             soundObjects[gMusic].setVolume(gVolume * 40 / 100);
  245.          }
  246.       }
  247.    }
  248.    if(mySound == undefined)
  249.    {
  250.       return undefined;
  251.    }
  252.    mySound.onSoundComplete = commentFini;
  253.    if(gClicZap !== "NOZAP_NOBLOCK")
  254.    {
  255.       trace("creerRectangle " + creerRectangle + " " + gHeight + " " + gWidth);
  256.       mcClicZap = creerRectangle({nom:"mcClicZap",pere:_root,level:15000,width:gWidth,height:gHeight,x:0,y:0,alpha:0});
  257.       switch(gClicZap.split("_")[0])
  258.       {
  259.          case "ZAP":
  260.             mcClicZap.useHandCursor = false;
  261.             mcClicZap.onPress = function()
  262.             {
  263.                trace("clic zap son");
  264.                stopSon();
  265.             };
  266.             break;
  267.          case "NOZAP":
  268.             mcClicZap.useHandCursor = false;
  269.             mcClicZap.onPress = function()
  270.             {
  271.                trace("no clic allowed");
  272.             };
  273.       }
  274.       mcClicZap._visible = true;
  275.    }
  276.    if(gST == 1 && gBlockST == undefined)
  277.    {
  278.       gereTextes.afficheST(gCommentName + _loc4_);
  279.    }
  280. }
  281. function creerClicZap(p)
  282. {
  283.    if(_global.mcClicZap2 != undefined)
  284.    {
  285.       removeMovieClip(_root.mcClicZap2);
  286.    }
  287.    var _loc0_ = null;
  288.    var _loc4_ = _global.mcClicZap2 = creerRectangle({nom:"mcClicZap2",pere:_root,level:15001,width:gWidth,height:gHeight,x:0,y:0,alpha:0});
  289.    _loc4_.p = p;
  290.    _loc4_.useHandCursor = false;
  291.    _loc4_.onPress = function()
  292.    {
  293.       trace("clic zap " + this.p);
  294.       this.p.retour.call(this.p.ecouteur);
  295.       removeMovieClip(this);
  296.       _global.mcClicZap2 = undefined;
  297.    };
  298.    _loc4_._visible = true;
  299. }
  300. function creerRectangle(p)
  301. {
  302.    var _loc15_ = p.x != undefined ? p.x : 0;
  303.    var _loc13_ = p.y != undefined ? p.y : 0;
  304.    if(p.w != undefined)
  305.    {
  306.       var _loc16_ = p.w;
  307.    }
  308.    else if(p.width != undefined)
  309.    {
  310.       _loc16_ = p.width;
  311.    }
  312.    if(p.h != undefined)
  313.    {
  314.       var _loc14_ = p.h;
  315.    }
  316.    else if(p.height != undefined)
  317.    {
  318.       _loc14_ = p.height;
  319.    }
  320.    var _loc11_ = p.pere != undefined ? p.pere : _root;
  321.    var _loc9_ = p.level != undefined ? p.level : 10;
  322.    var _loc12_ = p.couleur != undefined ? p.couleur : 0;
  323.    var _loc10_ = p.nom != undefined ? p.nom : "ClipSansNom";
  324.    var _loc4_ = p.courbure != undefined ? p.courbure : 0;
  325.    var _loc17_ = p.alpha != undefined ? p.alpha : 100;
  326.    var _loc7_ = 0;
  327.    var _loc8_ = 0;
  328.    var _loc6_ = _loc16_;
  329.    var _loc5_ = _loc14_;
  330.    trace(_loc6_ + " " + _loc5_);
  331.    var _loc3_ = _loc11_.createEmptyMovieClip(_loc10_,_loc9_);
  332.    _loc3_.beginFill(_loc12_,_loc17_);
  333.    _loc3_.moveTo(_loc7_,_loc5_ - _loc4_);
  334.    _loc3_.lineTo(_loc7_,_loc8_ + _loc4_);
  335.    _loc3_.curveTo(_loc7_,_loc8_,_loc7_ + _loc4_,_loc8_);
  336.    _loc3_.lineTo(_loc6_ - _loc4_,_loc8_);
  337.    _loc3_.curveTo(_loc6_,_loc8_,_loc6_,_loc8_ + _loc4_);
  338.    _loc3_.lineTo(_loc6_,_loc5_ - _loc4_);
  339.    _loc3_.curveTo(_loc6_,_loc5_,_loc6_ - _loc4_,_loc5_);
  340.    _loc3_.lineTo(_loc7_ + _loc4_,_loc5_);
  341.    _loc3_.curveTo(_loc7_,_loc5_,_loc7_,_loc5_ - _loc4_);
  342.    _loc3_.endFill();
  343.    _loc3_._x = _loc15_;
  344.    _loc3_._y = _loc13_;
  345.    return _loc3_;
  346. }
  347. function stopSon()
  348. {
  349.    gCommentOn.stop();
  350.    commentFini();
  351. }
  352. function commentFini()
  353. {
  354.    testeFinCommentSpecial();
  355.    if(gClicZap !== "NOZAP_NOBLOCK")
  356.    {
  357.       removeMovieClip("mcClicZap");
  358.    }
  359.    gCommentOn = undefined;
  360.    gBlockST = undefined;
  361.    gereTextes.masqueST();
  362.    if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  363.    {
  364.       soundObjects[gMusic].setVolume(gVolume);
  365.    }
  366.    if(gClipTarget !== undefined)
  367.    {
  368.       gClipTarget.gotoAndStop(gClipTargetLabel);
  369.       gClipTarget = undefined;
  370.       gClipTargetLabel = undefined;
  371.    }
  372.    switch(gActionFinSon)
  373.    {
  374.       case "RIEN":
  375.          break;
  376.       case "PLAY":
  377.          if(_root.gNextLabel == undefined)
  378.          {
  379.             if(gLineaireOn != undefined)
  380.             {
  381.                if((_loc0_ = gLineaireOn) !== "_")
  382.                {
  383.                   lSonSuivant = gLineaireOn + gimme2digits(Number(gSoundString.split("_")[gSoundString.split("_").length - 1]) + 1);
  384.                   lLabel = lSonSuivant;
  385.                }
  386.                else
  387.                {
  388.                   lSonSuivant = gimme2digits(Number(gSoundString.split("_")[gSoundString.split("_").length - 1]) + 1);
  389.                   lLabel = gLineaireOn + lSonSuivant;
  390.                }
  391.                joueSon({mc:gClipRef,nomSon:lSonSuivant,zapBlock:gClicZap,actionFin:gActionFinSon});
  392.                gClipRef.gotoAndStop(lLabel);
  393.             }
  394.             else
  395.             {
  396.                gClipRef.play();
  397.             }
  398.          }
  399.          else
  400.          {
  401.             gClipRef.gotoAndPlay(_root.gNextLabel);
  402.             _root.gNextLabel = undefined;
  403.             gLineaireOn = undefined;
  404.          }
  405.          break;
  406.       default:
  407.          _root[gActionFinSon]();
  408.    }
  409. }
  410. function joueBruitage(p)
  411. {
  412.    var _loc2_ = soundObjects[gBruitageName + p.nomSon];
  413.    if(gListeBruitage == undefined)
  414.    {
  415.       gListeBruitage = [];
  416.       gListeA_fin_Bruitage = [];
  417.       gListeLoop_Bruitage = [];
  418.    }
  419.    _loc2_.setVolume(gVolume);
  420.    _loc2_.id = p.nomSon;
  421.    gListeBruitage.push(_loc2_.id);
  422.    if(p.actionFin !== undefined)
  423.    {
  424.       gActionFinBruitage = p.actionFin;
  425.       gListeA_fin_Bruitage.push(gActionFinBruitage);
  426.    }
  427.    else
  428.    {
  429.       gActionFinBruitage = undefined;
  430.       gListeA_fin_Bruitage.push("");
  431.    }
  432.    _loc2_.p = p;
  433.    _loc2_.onSoundComplete = mx.utils.Delegate.create(_loc2_,finBruitage);
  434.    if(p.loopSon == undefined)
  435.    {
  436.       _loc2_.start(p.offset);
  437.       gListeLoop_Bruitage.push("");
  438.    }
  439.    else
  440.    {
  441.       _loc2_.start(p.offset,p.loopSon);
  442.       gListeLoop_Bruitage.push(p.loopSon);
  443.    }
  444. }
  445. function stopBruitage(p)
  446. {
  447.    var _loc1_ = soundObjects[gBruitageName + p.nomSon];
  448.    finBruitage(p.nomSon);
  449.    _loc1_.stop();
  450. }
  451. function finBruitage(lSon)
  452. {
  453.    if(lSon == undefined)
  454.    {
  455.       lSon = this.id;
  456.    }
  457.    if(gListeBruitage !== undefined)
  458.    {
  459.       if(getPos(gListeBruitage,lSon) !== -1)
  460.       {
  461.          if(gListeA_fin_Bruitage[getPos(gListeBruitage,lSon)] !== "")
  462.          {
  463.             if(typeof gListeA_fin_Bruitage[getPos(gListeBruitage,lSon)] == "string")
  464.             {
  465.                gClipGen[gListeA_fin_Bruitage[getPos(gListeBruitage,lSon)]]();
  466.             }
  467.             else
  468.             {
  469.                gListeA_fin_Bruitage[getPos(gListeBruitage,lSon)].call(this.p.MC);
  470.             }
  471.          }
  472.          gListeA_fin_Bruitage.splice(getPos(gListeBruitage,lSon),1);
  473.          gListeLoop_Bruitage.splice(getPos(gListeBruitage,lSon),1);
  474.          gListeBruitage.splice(getPos(gListeBruitage,lSon),1);
  475.          if(gListeBruitage.length == 0)
  476.          {
  477.             gListeBruitage = undefined;
  478.             gListeA_fin_Bruitage = undefined;
  479.             gListeLoop_Bruitage = undefined;
  480.          }
  481.       }
  482.    }
  483. }
  484. function getPos(myList, myValue)
  485. {
  486.    lPresent = -1;
  487.    maPosition = 0;
  488.    while(maPosition <= myList.length)
  489.    {
  490.       if(myList[maPosition] == myValue)
  491.       {
  492.          lPresent = maPosition;
  493.          break;
  494.       }
  495.       maPosition++;
  496.    }
  497.    return lPresent;
  498. }
  499. function trouvePosMax(myList)
  500. {
  501.    lMax = myList[0];
  502.    lPosMax = 0;
  503.    i = 1;
  504.    while(i <= myList.length)
  505.    {
  506.       if(myList[i] > lMax)
  507.       {
  508.          lMax = myList[i];
  509.          lPosMax = i;
  510.       }
  511.       i++;
  512.    }
  513.    return lPosMax;
  514. }
  515. function duplicate(myList)
  516. {
  517.    newList = [];
  518.    i = 0;
  519.    while(i <= myList.length - 1)
  520.    {
  521.       newList.push(myList[i]);
  522.       i++;
  523.    }
  524.    return newList;
  525. }
  526. function randomiseList(myList)
  527. {
  528.    var _loc3_ = duplicate(myList);
  529.    var _loc4_ = [];
  530.    var _loc5_ = _loc3_.length;
  531.    var _loc2_ = 0;
  532.    while(_loc2_ < _loc5_)
  533.    {
  534.       var _loc1_ = randomValue(0,_loc3_.length - 1);
  535.       _loc4_.push(_loc3_[_loc1_]);
  536.       _loc3_.splice(_loc1_,1);
  537.       _loc2_ = _loc2_ + 1;
  538.    }
  539.    return _loc4_;
  540. }
  541. function returnNodeByPathRandomise(nodeSent)
  542. {
  543.    var _loc4_ = new XML();
  544.    var _loc5_ = nodeSent.childNodes.length;
  545.    var _loc1_ = 0;
  546.    while(_loc1_ < _loc5_)
  547.    {
  548.       var _loc2_ = randomValue(0,nodeSent.childNodes.length - 1);
  549.       _loc4_.appendChild(nodeSent.childNodes[_loc2_]);
  550.       _loc1_ = _loc1_ + 1;
  551.    }
  552.    return _loc4_;
  553. }
  554. function zapIntro(myLabel)
  555. {
  556.    mcClicZapIntro = this.createEmptyMovieClip("mcClicZapIntro",16031);
  557.    mcClicZapIntro.attachMovie("ClipInvisible","ClipInvisible",2);
  558.    mcClicZapIntro._width = gClipGen._width;
  559.    mcClicZapIntro._height = gClipGen._height;
  560.    mcClicZapIntro._x = 0;
  561.    mcClicZapIntro._y = 0;
  562.    mcClicZapIntro.useHandCursor = false;
  563.    mcClicZapIntro.onPress = function()
  564.    {
  565.       trace("clic zappIntro " + this);
  566.       stopComment();
  567.       gotoAndPlay(myLabel);
  568.       removeZapIntro();
  569.    };
  570. }
  571. function removeZapIntro()
  572. {
  573.    trace("mcClicZapIntrO " + mcClicZapIntro._name + " " + this);
  574.    if(mcClicZapIntro._x != undefined)
  575.    {
  576.       trace("suppression");
  577.       removeMovieClip(mcClicZapIntro);
  578.    }
  579. }
  580. function onMcOut(myMc)
  581. {
  582.    gereCursor(1);
  583.    if(myMc.pLabelOut == undefined)
  584.    {
  585.       myMc.gotoAndPlay("E1");
  586.    }
  587.    else
  588.    {
  589.       myMc.gotoAndPlay(myMc.pLabelOut);
  590.    }
  591.    if(myMc.pSon.split("")[0] == "B")
  592.    {
  593.       stopBruitage({nomSon:myMc.pSon});
  594.    }
  595.    else
  596.    {
  597.       stopComment();
  598.    }
  599.    if(myMc.pIB !== undefined)
  600.    {
  601.       gereTextes.masqueIB();
  602.    }
  603. }
  604. function onMcOver(p)
  605. {
  606.    trace("MACOVER");
  607.    var myMc = p.mc;
  608.    myMc.pIB = p.codeIB;
  609.    if(p.nomSon == undefined)
  610.    {
  611.       if(p.nomSonC == undefined)
  612.       {
  613.          myMc.pSon = "B_" + myMc._name.split("_")[1];
  614.       }
  615.       else
  616.       {
  617.          myMc.pSon = p.nomSonC;
  618.       }
  619.    }
  620.    else
  621.    {
  622.       myMc.pSon = p.nomSon;
  623.    }
  624.    if(p.actionFin == undefined)
  625.    {
  626.       myMc.actionFin = "RIEN";
  627.    }
  628.    else
  629.    {
  630.       myMc.actionFin = p.actionFin;
  631.    }
  632.    myMc.pLabelOut = p.mcLabelOut;
  633.    myMc.onRollOver = function()
  634.    {
  635.       gereCursor(2);
  636.       if(p.mcLabelIn == undefined)
  637.       {
  638.          this.gotoAndPlay("E2");
  639.       }
  640.       else
  641.       {
  642.          this.gotoAndPlay(p.mcLabelIn);
  643.       }
  644.       trace("BRUITAGE");
  645.       trace(this.pSon.split("")[0]);
  646.       if(this.pSon.split("")[0] == "B")
  647.       {
  648.          joueBruitage({nomSon:this.pSon});
  649.       }
  650.       else
  651.       {
  652.          joueSon({nomSon:this.pSon,zapBlock:"NOZAP_NOBLOCK",actionFin:this.actionFin});
  653.       }
  654.       if(this.pIB !== undefined)
  655.       {
  656.          gereTextes.afficheIB({mc:this,codeIB:this.pIB});
  657.       }
  658.    };
  659.    myMc.onRollOut = myMc.onDragOut = function()
  660.    {
  661.       onMcOut(myMc);
  662.    };
  663. }
  664. function desactiveClip(pClip)
  665. {
  666.    trace(pClip);
  667.    delete pClip.onRollOver;
  668.    delete pClip.onRollOut;
  669.    delete pClip.onDragOut;
  670.    delete pClip.onPress;
  671.    delete pClip.onRelease;
  672.    delete pClip.onReleaseOutside;
  673. }
  674. function afficheClipPos(myMc, myX, myY)
  675. {
  676.    myMc._x = myX;
  677.    myMc._y = myY;
  678.    myMc._visible = true;
  679. }
  680. function gimme2digits(X)
  681. {
  682.    if(Number(X) < 10)
  683.    {
  684.       lX = "0" + Number(X);
  685.    }
  686.    else
  687.    {
  688.       lX = String(X);
  689.    }
  690.    return lX;
  691. }
  692. function randomValue(min, max)
  693. {
  694.    var _loc1_ = Math.floor(Math.random() * (max - min + 1)) + min;
  695.    return _loc1_;
  696. }
  697. function chercheDepthPlus(myMc, myDepth)
  698. {
  699.    var _loc1_ = myDepth;
  700.    while(_loc1_ < 17000)
  701.    {
  702.       if(myMc.getInstanceAtDepth(_loc1_) == undefined)
  703.       {
  704.          break;
  705.       }
  706.       _loc1_ = _loc1_ + 1;
  707.    }
  708.    return _loc1_;
  709. }
  710. function chercheDepthMoins(myMc, myDepth)
  711. {
  712.    var _loc1_ = myDepth;
  713.    while(_loc1_ > -16383)
  714.    {
  715.       if(myMc.getInstanceAtDepth(_loc1_) == undefined)
  716.       {
  717.          break;
  718.       }
  719.       _loc1_ = _loc1_ - 1;
  720.    }
  721.    return _loc1_;
  722. }
  723. function changeST(myST)
  724. {
  725.    trace("changeST   : " + myST);
  726.    if(myST == "1")
  727.    {
  728.       gST = 1;
  729.       if(gCommentOn !== undefined)
  730.       {
  731.          gereTextes.afficheST(gCommentOn.id);
  732.       }
  733.    }
  734.    else
  735.    {
  736.       sousTitre = 0;
  737.       gST = 0;
  738.       gereTextes.masqueST(this);
  739.    }
  740. }
  741. function changeMusicOn(myChangeMusicOn)
  742. {
  743.    trace("changeMusicOn   : " + myChangeMusicOn);
  744.    switch(String(myChangeMusicOn))
  745.    {
  746.       case "1":
  747.          gMusicOn = 1;
  748.          if(gMusic == undefined)
  749.          {
  750.             gMusic = gBruitageName + "MU";
  751.          }
  752.          trace("changeMusicOn2   : " + gMusic + " - " + gVolume);
  753.          if(gBlockMusic == undefined)
  754.          {
  755.             if(gCommentOn !== undefined)
  756.             {
  757.                soundObjects[gMusic].setVolume(gVolume * 0.4);
  758.             }
  759.             else
  760.             {
  761.                soundObjects[gMusic].setVolume(gVolume);
  762.             }
  763.          }
  764.          else
  765.          {
  766.             soundObjects[gMusic].setVolume(0);
  767.          }
  768.          soundObjects[gMusic].start(0,1000);
  769.          break;
  770.       case "0":
  771.          soundObjects[gMusic].stop();
  772.          gMusicOn = 0;
  773.          break;
  774.       default:
  775.          if(gMusic !== undefined)
  776.          {
  777.             soundObjects[gMusic].stop();
  778.          }
  779.          gMusic = gBruitageName + myChangeMusicOn;
  780.          if(gMusicOn == 1)
  781.          {
  782.             if(gBlockMusic == undefined)
  783.             {
  784.                if(gCommentOn !== undefined)
  785.                {
  786.                   soundObjects[gMusic].setVolume(gVolume * 0.4);
  787.                }
  788.                else
  789.                {
  790.                   soundObjects[gMusic].setVolume(gVolume);
  791.                }
  792.             }
  793.             else
  794.             {
  795.                soundObjects[gMusic].setVolume(0);
  796.             }
  797.             soundObjects[gMusic].start(0,1000);
  798.          }
  799.    }
  800. }
  801. function changeVolume(myChangeVolume)
  802. {
  803.    trace("changeVolume   : " + myChangeVolume);
  804.    gVolume = Number(myChangeVolume);
  805.    if(gCommentOn !== undefined)
  806.    {
  807.       gCommentOn.setVolume(gVolume);
  808.       if(gMusicOn == 1)
  809.       {
  810.          soundObjects[gMusic].setVolume(gVolume * 0.4);
  811.       }
  812.    }
  813.    else if(gMusicOn == 1)
  814.    {
  815.       soundObjects[gMusic].setVolume(gVolume);
  816.    }
  817. }
  818. function DesactiveBZ()
  819. {
  820.    BT_BZ.useHandCursor = false;
  821.    BT_BZ.gBZactif = 0;
  822. }
  823. function ActiveBZ()
  824. {
  825.    BT_BZ.useHandCursor = true;
  826.    BT_BZ.gBZactif = 1;
  827. }
  828. function getSoundByID(attributeValue)
  829. {
  830.    var _loc2_ = this.moduleInfo.filterNode(this.moduleInfo.returnNodeByPath("Resources.ResourcesZip"),"type","mp3");
  831.    mySound = undefined;
  832.    mySound = this.recusiveGetSoundByAttribute(_loc2_,"id",attributeValue);
  833.    if(mySound == undefined)
  834.    {
  835.       trace(attributeValue + " n\'existe pas dans XML");
  836.    }
  837.    return mySound;
  838. }
  839. function recusiveGetSoundByAttribute(node, attribute, attributeValue)
  840. {
  841.    var _loc2_ = 0;
  842.    while(_loc2_ < node.childNodes.length)
  843.    {
  844.       if(node.childNodes[_loc2_].attributes[attribute] == attributeValue)
  845.       {
  846.          mySound = node.childNodes[_loc2_];
  847.          break;
  848.       }
  849.       if(node.childNodes[_loc2_].hasChildNodes())
  850.       {
  851.          this.recusiveGetSoundByAttribute(node.childNodes[_loc2_],attribute,attributeValue);
  852.       }
  853.       _loc2_ = _loc2_ + 1;
  854.    }
  855.    return mySound;
  856. }
  857. function gereCursor(myCursor)
  858. {
  859.    switch(myCursor)
  860.    {
  861.       case 1:
  862.       case "fleche":
  863.          myCursor = "fleche";
  864.          break;
  865.       case 2:
  866.       case "doigt":
  867.          myCursor = "doigt";
  868.          break;
  869.       case 3:
  870.       case "mainO":
  871.          myCursor = "mainO";
  872.          break;
  873.       case 4:
  874.       case "mainF":
  875.          myCursor = "mainF";
  876.          break;
  877.       case 0:
  878.       case "O":
  879.          myCursor = "O";
  880.    }
  881.    trace("cursor " + myCursor);
  882.    _global.CURSEUR.Action(myCursor);
  883. }
  884. function ConvertCoord(mc_src, mc_dest)
  885. {
  886.    var _loc1_ = {x:0,y:0};
  887.    mc_src.localToGlobal(_loc1_);
  888.    mc_dest.globalToLocal(_loc1_);
  889.    return _loc1_;
  890. }
  891. function xtrace(p)
  892. {
  893.    var _loc3_ = typeof p != "string" ? "" + p.mess : "" + p;
  894.    var _loc5_ = p.group != undefined ? p.group : "tous";
  895.    if(xtraceGroups[_loc5_] == 1)
  896.    {
  897.       trace(_loc3_);
  898.       if(_global.xtrace_mode != "on")
  899.       {
  900.          return undefined;
  901.       }
  902.       var _loc4_ = new LocalConnection();
  903.       _loc4_.allowDomain = function(sendingDomain)
  904.       {
  905.          return true;
  906.       };
  907.       _loc4_.send("lc_name","AfficherTexte",_loc3_);
  908.    }
  909. }
  910. function xtrace_raz()
  911. {
  912.    if(_global.xtrace_mode != "on")
  913.    {
  914.       return undefined;
  915.    }
  916.    var _loc2_ = new LocalConnection();
  917.    _loc2_.send("lc_name","RazTexte",mess);
  918. }
  919. function xlisteObj(p)
  920. {
  921.    if(xlisteObj_mode != "on")
  922.    {
  923.       return undefined;
  924.    }
  925.    var _loc1_ = p.obj != undefined ? p.obj : p;
  926.    p.mess = p.mess != undefined ? p.mess : "";
  927.    xtrace({mess:"\r____________________" + p.mess + " " + _loc1_._name + "______________________",group:p.group});
  928.    for(props in _loc1_)
  929.    {
  930.       xtrace({mess:props + " = " + _loc1_[props],group:p.group});
  931.    }
  932.    xtrace({mess:"_________________________________________________\r",group:p.group});
  933. }
  934. function IncString(str, seuil)
  935. {
  936.    var _loc2_ = str.split("_");
  937.    var _loc1_ = _loc2_.length - 1;
  938.    var _loc3_ = Number(_loc2_[_loc1_]) + 1;
  939.    while(_loc3_ > seuil)
  940.    {
  941.       _loc2_[_loc1_] = gimme2digits(0);
  942.       _loc1_ = _loc1_ - 1;
  943.       _loc3_ = Number(_loc2_[_loc1_]) + 1;
  944.    }
  945.    _loc2_[_loc1_] = gimme2digits(_loc3_);
  946.    return _loc2_.join("_");
  947. }
  948. function DecString(str)
  949. {
  950.    var _loc1_ = str.split("_");
  951.    trace(_loc1_);
  952.    var _loc2_ = _loc1_.length - 1;
  953.    trace(Number(_loc1_[_loc2_]));
  954.    _loc1_[_loc2_] = gimme2digits(Number(_loc1_[_loc2_]) - 1);
  955.    return _loc1_.join("_");
  956. }
  957. function xGetConfig()
  958. {
  959.    _root.xConfig = new Object();
  960.    _root.xConfig.Set = function(p)
  961.    {
  962.       if(_root.xConfig[p.nom] == undefined)
  963.       {
  964.          if(p.defaut != "OBLIGATOIRE")
  965.          {
  966.             _root.xConfig[p.nom] = p.defaut;
  967.             if(p.type == "number")
  968.             {
  969.                _root.xConfig[p.nom] = Number(_root.xConfig[p.nom]);
  970.             }
  971.          }
  972.       }
  973.    };
  974.    _root.xConfig._name = "xConfig";
  975.    var _loc2_ = _root.moduleInfo.returnNodeByPath("Module.Config.Params").childNodes;
  976.    for(props in _loc2_)
  977.    {
  978.       _root.xConfig[_loc2_[props].attributes.nom] = _loc2_[props].attributes.valeur;
  979.    }
  980. }
  981. function GetFilePath(fichier)
  982. {
  983.    var _loc2_ = AntiSlashToSlash(fichier);
  984.    var _loc1_ = _loc2_.split("/");
  985.    _loc1_.pop();
  986.    return _loc1_.join("/");
  987. }
  988. function AntiSlashToSlash(chaine)
  989. {
  990.    return str_replace(chaine,"\\","/");
  991. }
  992. function str_replace(str, search, replace)
  993. {
  994.    return str.split(search).join(replace);
  995. }
  996. function JoindreObjets(objects)
  997. {
  998.    var _loc2_ = new Object();
  999.    var _loc1_ = 0;
  1000.    while(_loc1_ < objects.length)
  1001.    {
  1002.       p1 = objects[_loc1_];
  1003.       for(props in p1)
  1004.       {
  1005.          _loc2_[props] = p1[props];
  1006.       }
  1007.       _loc1_ = _loc1_ + 1;
  1008.    }
  1009.    return _loc2_;
  1010. }
  1011. function GetOriginalSize(mc)
  1012. {
  1013.    var _loc2_ = mc._rotation;
  1014.    mc._rotation = 0;
  1015.    var _loc3_ = {w:mc._width * mc._xscale / 100,h:mc._height * mc._yscale / 100};
  1016.    mc._rotation = _loc2_;
  1017.    return _loc3_;
  1018. }
  1019. function GetOriginalWidth(mc)
  1020. {
  1021.    var _loc2_ = mc._rotation;
  1022.    mc._rotation = 0;
  1023.    var _loc3_ = mc._width * mc._xscale / 100;
  1024.    var _loc4_ = mc._height * mc._yscale / 100;
  1025.    mc._rotation = _loc2_;
  1026.    return _loc3_;
  1027. }
  1028. function GetOriginalHeight(mc)
  1029. {
  1030.    var _loc2_ = mc._rotation;
  1031.    mc._rotation = 0;
  1032.    var _loc4_ = mc._width * mc._xscale / 100;
  1033.    var _loc3_ = mc._height * mc._yscale / 100;
  1034.    mc._rotation = _loc2_;
  1035.    return _loc3_;
  1036. }
  1037. function CreerCache(p)
  1038. {
  1039.    var _loc4_ = p.level != undefined ? p.level : _global.Levels.cache;
  1040.    var _loc2_ = p.mc.createEmptyMovieClip("CACHE",_loc4_);
  1041.    _loc2_.beginFill(65280,50);
  1042.    _loc2_.moveTo(0,0);
  1043.    _loc2_.lineTo(p.width,0);
  1044.    _loc2_.lineTo(p.width,p.height);
  1045.    _loc2_.lineTo(0,p.height);
  1046.    _loc2_.lineTo(0,0);
  1047.    _loc2_.endFill();
  1048.    p.mc.setMask(_loc2_);
  1049. }
  1050. function ConvertCoord(mc_src, mc_dest)
  1051. {
  1052.    var _loc1_ = {x:0,y:0};
  1053.    mc_src.localToGlobal(_loc1_);
  1054.    mc_dest.globalToLocal(_loc1_);
  1055.    return _loc1_;
  1056. }
  1057. function getGlobalCoord(xc, yc, mc)
  1058. {
  1059.    var _loc1_ = {x:xc * 100 / mc._xscale,y:yc * 100 / mc._yscale};
  1060.    mc.localToGlobal(_loc1_);
  1061.    return _loc1_;
  1062. }
  1063. function getLocalCoord(xc, yc, mc)
  1064. {
  1065.    var _loc1_ = new Object({x:xc,y:yc});
  1066.    mc.globalToLocal(_loc1_);
  1067.    _loc1_.x = _loc1_.x / 100 * mc._xscale;
  1068.    _loc1_.y = _loc1_.y / 100 * mc._yscale;
  1069.    return _loc1_;
  1070. }
  1071. function length_ass(arr)
  1072. {
  1073.    var _loc1_ = 0;
  1074.    for(prop in arr)
  1075.    {
  1076.       _loc1_ = _loc1_ + 1;
  1077.    }
  1078.    return _loc1_;
  1079. }
  1080. function ExplodeString(chaine)
  1081. {
  1082.    var _loc3_ = new Array();
  1083.    var _loc1_ = 0;
  1084.    while(_loc1_ < chaine.length)
  1085.    {
  1086.       _loc3_.push(chaine.charAt(_loc1_));
  1087.       _loc1_ = _loc1_ + 1;
  1088.    }
  1089.    return _loc3_;
  1090. }
  1091. function BloquerActives()
  1092. {
  1093.    if(_global.ClipBloquant == undefined)
  1094.    {
  1095.       var _loc0_ = null;
  1096.       var _loc2_ = _global.ClipBloquant = _MOD_.createEmptyMovieClip("ClipBloquant",10123);
  1097.       _loc2_.attachMovie("ClipInvisible","ClipInvisible",2);
  1098.       _loc2_._width = Stage.width;
  1099.       _loc2_._height = Stage.height;
  1100.       _loc2_._x = 0;
  1101.       _loc2_._y = 0;
  1102.       _loc2_.useHandCursor = false;
  1103.       _loc2_.onPress = function()
  1104.       {
  1105.       };
  1106.    }
  1107. }
  1108. function DebloquerActives()
  1109. {
  1110.    if(_global.ClipBloquant != undefined)
  1111.    {
  1112.       removeMovieClip(_global.ClipBloquant);
  1113.       _global.ClipBloquant = undefined;
  1114.    }
  1115. }
  1116. function afficheLM_x2(p)
  1117. {
  1118.    viderLM_x2();
  1119.    _root.gereTextes.afficheLM({codeLM:p.codeLM,X:p.LMrep._x,Y:p.LMrep._y,width:p.LMrep._width,height:p.LMrep._height});
  1120.    LMaVider2.push(p);
  1121. }
  1122. function viderLM_x2()
  1123. {
  1124.    var _loc3_ = 0;
  1125.    while(_loc3_ < _global.LMaVider2.length)
  1126.    {
  1127.       _root.gereTextes.masqueLM(_global.LMaVider2[_loc3_]);
  1128.       _loc3_ = _loc3_ + 1;
  1129.    }
  1130. }
  1131. function afficheLM_x(p)
  1132. {
  1133.    _root.gereTextes.afficheLM({codeLM:p.codeLM,X:p.LMrep._x - p.width / 2,Y:p.LMrep._y - p.height / 2,width:p.width,height:p.height});
  1134.    _global.LMaVider.push(p);
  1135. }
  1136. function viderLM_x()
  1137. {
  1138.    var _loc3_ = 0;
  1139.    while(_loc3_ < _global.LMaVider.length)
  1140.    {
  1141.       _root.gereTextes.masqueLM(_global.LMaVider[_loc3_]);
  1142.       _loc3_ = _loc3_ + 1;
  1143.    }
  1144. }
  1145. function InitMC(p)
  1146. {
  1147.    trace("initMC " + p.mc);
  1148.    var mc = typeof p != "movieclip" ? p.mc : p;
  1149.    if(p.level != undefined)
  1150.    {
  1151.       var ceMC_name_old = mc._name + "_old";
  1152.       var ceMC_name = mc._name;
  1153.       mc._name = ceMC_name_old;
  1154.       mc.duplicateMovieClip(ceMC_name,p.level);
  1155.       mc._visible = false;
  1156.       mc = this[ceMC_name];
  1157.    }
  1158.    var fonction = p.fonction != undefined ? eval("InitMC_" + p.fonction) : InitMC_standart;
  1159.    mc.InitMC = fonction;
  1160.    mc.InitMC(p);
  1161. }
  1162. function InitMC_standart(p)
  1163. {
  1164.    if(p.IB != undefined)
  1165.    {
  1166.       if(typeof p.IBrep == "movieclip")
  1167.       {
  1168.          var IBrepere = p.IBrep;
  1169.       }
  1170.       else if(p.IBrep == true)
  1171.       {
  1172.          var IBrepere = _MOD_["IBrep_" + p.IB];
  1173.       }
  1174.       else
  1175.       {
  1176.          var IBrepere = p.mc;
  1177.       }
  1178.       this.afficheIB = function()
  1179.       {
  1180.          _MOD_.gereTextes.afficheIB({codeIB:p.IB,mc:IBrepere});
  1181.       };
  1182.       this.masqueIB = function()
  1183.       {
  1184.          _MOD_.gereTextes.masqueIB();
  1185.       };
  1186.    }
  1187.    this.reposFrame = p.reposFrame != undefined ? p.reposFrame : "E1";
  1188.    this.pressFrame = p.pressFrame != undefined ? p.pressFrame : "E2";
  1189.    this.overFrame = p.overFrame != undefined ? p.overFrame : "E2";
  1190.    this.outFrame = p.outFrame != undefined ? p.outFrame : "E1";
  1191.    this.releaseFrame = p.releaseFrame != undefined ? p.releaseFrame : "E1";
  1192.    this.releaseOutFrame = p.releaseOutFrame != undefined ? p.releaseOutFrame : "E1";
  1193.    this.activeFrame = p.activeFrame != undefined ? p.activeFrame : undefined;
  1194.    this.desactiveFrame = p.desactiveFrame != undefined ? p.desactiveFrame : undefined;
  1195.    if(p.reposFrame != undefined)
  1196.    {
  1197.       this.gotoAndStop(p.reposFrame);
  1198.    }
  1199.    this.p = p;
  1200.    ┬º┬ºpush(this);
  1201.    ┬º┬ºpush("joueson");
  1202.    if(p.son == undefined)
  1203.    {
  1204.       ┬º┬ºpush(undefined);
  1205.    }
  1206.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1207.    ┬º┬ºpush(this);
  1208.    ┬º┬ºpush("stopson");
  1209.    if(p.nostop != undefined)
  1210.    {
  1211.       ┬º┬ºpush(undefined);
  1212.    }
  1213.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1214.    if(p.sonOnPress != undefined)
  1215.    {
  1216.       this.sonOnPress = p.sonOnPress;
  1217.       this.sonOnPress_offset = p.sonOnPress_offset != undefined ? Number(p.sonOnPress_offset) : 0;
  1218.       this.sonOnPress_loopSon = p.sonOnPress_loopSon != undefined ? Number(p.sonOnPress_loopSon) : 0;
  1219.       this.jouesonOnPress = function()
  1220.       {
  1221.          joueBruitage({nomSon:this.sonOnPress,offset:this.sonOnPress_offset,loopSon:this.sonOnPress_loopSon});
  1222.       };
  1223.       this.stopsonOnPress = function()
  1224.       {
  1225.          stopBruitage({nomSon:this.sonOnPress});
  1226.       };
  1227.    }
  1228.    else
  1229.    {
  1230.       this.jouesonOnMove = undefined;
  1231.       this.stopsonOnMove = undefined;
  1232.    }
  1233.    this.curseur_after_press = p.goto != undefined ? "fleche" : "doigt";
  1234.    this.curseur_after_press = p.curseurAfterPress != undefined ? p.curseurAfterPress : "doigt";
  1235.    this.goto = p.goto;
  1236.    this.Activer = function()
  1237.    {
  1238.       if(this.Actif == true)
  1239.       {
  1240.          return undefined;
  1241.       }
  1242.       this.enabled = true;
  1243.       this.BTN.enabled = true;
  1244.       this.Actif = true;
  1245.       this.gotoAndStop(this.activeFrame);
  1246.    };
  1247.    this.Desactiver = function()
  1248.    {
  1249.       if(this.Actif == false)
  1250.       {
  1251.          return undefined;
  1252.       }
  1253.       this.enabled = false;
  1254.       this.BTN.enabled = false;
  1255.       this.Actif = false;
  1256.       this.stopsonOnPress();
  1257.       this.masqueIB();
  1258.       this.gotoAndStop(this.desactiveFrame);
  1259.    };
  1260.    this.Activer();
  1261.    this.GS = this.gotoAndStop;
  1262.    this.MConPress = function()
  1263.    {
  1264.       if(this.p.blockOnPress == true)
  1265.       {
  1266.          this.enabled = false;
  1267.       }
  1268.       this.stopson();
  1269.       this.jouesonOnPress();
  1270.       this.masqueIB();
  1271.       this.gotoAndStop(this.pressFrame);
  1272.       gereCursor(this.curseur_after_press);
  1273.       _root.gotoAndStop(this.goto);
  1274.       var p = this.OnPress();
  1275.    };
  1276.    this.MConRollOver = function()
  1277.    {
  1278.       this.joueson();
  1279.       this.afficheIB();
  1280.       this.gotoAndStop(this.overFrame);
  1281.       gereCursor("doigt");
  1282.       var _loc2_ = this.OnRollOver();
  1283.    };
  1284.    this.MConRollOut = function()
  1285.    {
  1286.       this.stopson();
  1287.       this.masqueIB();
  1288.       this.gotoAndStop(this.outFrame);
  1289.       gereCursor("fleche");
  1290.       var _loc2_ = this.OnRollOut();
  1291.    };
  1292.    this.MConRelease = function()
  1293.    {
  1294.       this.gotoAndStop(this.releaseFrame);
  1295.       gereCursor("doigt");
  1296.       var _loc2_ = this.OnRelease();
  1297.    };
  1298.    this.MConReleaseOutside = function()
  1299.    {
  1300.       this.gotoAndStop(this.releaseOutFrame);
  1301.       gereCursor("fleche");
  1302.       var _loc2_ = this.OnReleaseOutside();
  1303.    };
  1304.    if(p.BTN != true)
  1305.    {
  1306.       this.onPress = this.MConPress;
  1307.       this.onRollOver = this.MConRollOver;
  1308.       this.onRollOut = this.MConRollOut;
  1309.       this.onRelease = this.MConRelease;
  1310.       this.onReleaseOutside = this.MConReleaseOutside;
  1311.    }
  1312.    else
  1313.    {
  1314.       this.BTN.onPress = function()
  1315.       {
  1316.          this._parent.MConPress();
  1317.       };
  1318.       this.BTN.onRollOver = function()
  1319.       {
  1320.          this._parent.MConRollOver();
  1321.       };
  1322.       this.BTN.onRollOut = function()
  1323.       {
  1324.          this._parent.MConRollOut();
  1325.       };
  1326.       this.BTN.onRelease = function()
  1327.       {
  1328.          this._parent.MConRelease();
  1329.       };
  1330.       this.BTN.onReleaseOutside = function()
  1331.       {
  1332.          this._parent.MConReleaseOutside();
  1333.       };
  1334.    }
  1335. }
  1336. function InitMC_BTN(p)
  1337. {
  1338.    if(p.IB != undefined)
  1339.    {
  1340.       if(p.IBrep == true)
  1341.       {
  1342.          var IBrepere = _MOD_["IBrep_" + p.IB];
  1343.       }
  1344.       else
  1345.       {
  1346.          var IBrepere = p.mc;
  1347.       }
  1348.       this.afficheIB = function()
  1349.       {
  1350.          gereTextes.afficheIB({codeIB:p.IB,mc:IBrepere});
  1351.       };
  1352.       this.masqueIB = function()
  1353.       {
  1354.          gereTextes.masqueIB();
  1355.       };
  1356.    }
  1357.    this.enabled = true;
  1358.    ┬º┬ºpush(this);
  1359.    ┬º┬ºpush("joueson");
  1360.    if(p.son == undefined)
  1361.    {
  1362.       ┬º┬ºpush(undefined);
  1363.    }
  1364.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1365.    ┬º┬ºpush(this);
  1366.    ┬º┬ºpush("stopson");
  1367.    if(p.nostop != undefined)
  1368.    {
  1369.       ┬º┬ºpush(undefined);
  1370.    }
  1371.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1372.    var curseur_after_press = p.goto != undefined ? "fleche" : "doigt";
  1373.    this.goto = p.goto;
  1374.    this.BTN.onPress = function()
  1375.    {
  1376.       this._parent.stopson();
  1377.       this._parent.masqueIB();
  1378.       this._parent.gotoAndStop("E3");
  1379.       gereCursor(curseur_after_press);
  1380.       _root.gotoAndStop(this.goto);
  1381.       var _loc3_ = this._parent.OnPress();
  1382.    };
  1383.    this.BTN.onRollOver = function()
  1384.    {
  1385.       this._parent.joueson();
  1386.       this._parent.afficheIB();
  1387.       this._parent.gotoAndStop("E2");
  1388.       gereCursor("doigt");
  1389.       var _loc2_ = this._parent.OnRollOver();
  1390.    };
  1391.    this.BTN.onRollOut = function()
  1392.    {
  1393.       this._parent.stopson();
  1394.       this._parent.masqueIB();
  1395.       this._parent.gotoAndStop("E1");
  1396.       gereCursor("fleche");
  1397.       var _loc2_ = this._parent.OnRollOut();
  1398.    };
  1399.    this.BTN.onRelease = function()
  1400.    {
  1401.       this._parent.gotoAndStop("E2");
  1402.       gereCursor("doigt");
  1403.       var _loc2_ = this._parent.OnRelease();
  1404.    };
  1405.    this.BTN.onReleaseOutside = function()
  1406.    {
  1407.       this._parent.gotoAndStop("E1");
  1408.       gereCursor("fleche");
  1409.       var _loc2_ = this._parent.OnReleaseOutside();
  1410.    };
  1411. }
  1412. function InitMC_dragdrop(p)
  1413. {
  1414.    xtrace("InitMC");
  1415.    if(p.IB != undefined)
  1416.    {
  1417.       if(p.IBrep == true)
  1418.       {
  1419.          var IBrepere = _MOD_["IBrep_" + p.IB];
  1420.       }
  1421.       else
  1422.       {
  1423.          var IBrepere = p.mc;
  1424.       }
  1425.       this.afficheIB = function()
  1426.       {
  1427.          gereTextes.afficheIB({codeIB:p.IB,mc:IBrepere});
  1428.       };
  1429.       this.masqueIB = function()
  1430.       {
  1431.          gereTextes.masqueIB();
  1432.       };
  1433.    }
  1434.    this.pDepth = this.getDepth();
  1435.    this.pressFrame = p.pressFrame != undefined ? p.pressFrame : "E3";
  1436.    ┬º┬ºpush(this);
  1437.    ┬º┬ºpush("joueson");
  1438.    if(p.son == undefined)
  1439.    {
  1440.       ┬º┬ºpush(undefined);
  1441.    }
  1442.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1443.    ┬º┬ºpush(this);
  1444.    ┬º┬ºpush("stopson");
  1445.    if(p.son == undefined)
  1446.    {
  1447.       ┬º┬ºpush(undefined);
  1448.    }
  1449.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1450.    ┬º┬ºpush(this);
  1451.    ┬º┬ºpush("jouesonOnPress");
  1452.    if(p.son == undefined)
  1453.    {
  1454.       ┬º┬ºpush(undefined);
  1455.    }
  1456.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1457.    ┬º┬ºpush(this);
  1458.    ┬º┬ºpush("stopsonOnPress");
  1459.    if(p.son == undefined)
  1460.    {
  1461.       ┬º┬ºpush(undefined);
  1462.    }
  1463.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1464.    ┬º┬ºpush(this);
  1465.    ┬º┬ºpush("jouesonOnOverCible");
  1466.    if(p.son == undefined)
  1467.    {
  1468.       ┬º┬ºpush(undefined);
  1469.    }
  1470.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1471.    ┬º┬ºpush(this);
  1472.    ┬º┬ºpush("stopsonOnOverCible");
  1473.    if(p.son == undefined)
  1474.    {
  1475.       ┬º┬ºpush(undefined);
  1476.    }
  1477.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1478.    var _loc5_ = p.goto != undefined ? "fleche" : "doigt";
  1479.    this.goto = p.goto;
  1480.    this.DetectDrag = function()
  1481.    {
  1482.       this._x = _xmouse - this.ecart_mousex;
  1483.       this._y = _ymouse - this.ecart_mousey;
  1484.       this.CiblesTouchees = [];
  1485.       var _loc2_ = 0;
  1486.       while(_loc2_ < this.CiblesDrag.length)
  1487.       {
  1488.          if(this.hitTest(this.CiblesDrag[_loc2_]))
  1489.          {
  1490.             this.CiblesDrag[_loc2_].gotoAndStop("E3");
  1491.             this.CiblesTouchees.push(this.CiblesDrag[_loc2_]);
  1492.             this.touche = this.touche + 1;
  1493.          }
  1494.          else
  1495.          {
  1496.             this.CiblesDrag[_loc2_].gotoAndStop("E1");
  1497.          }
  1498.          _loc2_ = _loc2_ + 1;
  1499.       }
  1500.       if(this.touche == 1)
  1501.       {
  1502.          this.jouesonOnOverCible();
  1503.       }
  1504.       if(this.CiblesTouchees.length <= 0)
  1505.       {
  1506.          this.touche = 0;
  1507.          this.stopsonOnOverCible();
  1508.       }
  1509.       this.PendantDrag();
  1510.    };
  1511.    this.StartDrag = function()
  1512.    {
  1513.       this.ecart_mousex = _xmouse - this._x;
  1514.       this.ecart_mousey = _ymouse - this._y;
  1515.       this.IntervalId = setInterval(mx.utils.Delegate.create(this,this.DetectDrag),10);
  1516.       this.swapDepths(15800);
  1517.    };
  1518.    this.ComeBack = function()
  1519.    {
  1520.       this._x = this.xOri;
  1521.       this._y = this.yOri;
  1522.       this.gotoAndStop("E1");
  1523.    };
  1524.    this.onPress = function()
  1525.    {
  1526.       this.jouesonOnPress();
  1527.       this.xOri = this._x;
  1528.       this.yOri = this._y;
  1529.       this.masqueIB();
  1530.       this.gotoAndStop(this.pressFrame);
  1531.       gereCursor("mainF");
  1532.       this.StartDrag();
  1533.       var _loc2_ = this.OnPress();
  1534.    };
  1535.    this.onRollOver = function()
  1536.    {
  1537.       this.joueson();
  1538.       this.afficheIB();
  1539.       this.gotoAndStop("E2");
  1540.       gereCursor("mainO");
  1541.       var _loc2_ = this.OnRollOver();
  1542.    };
  1543.    this.onRollOut = function()
  1544.    {
  1545.       this.stopson();
  1546.       this.gotoAndStop("E1");
  1547.       this.masqueIB();
  1548.       gereCursor("fleche");
  1549.       var _loc2_ = this.OnRollOut();
  1550.    };
  1551.    this.onRelease = function()
  1552.    {
  1553.       gereCursor("mainO");
  1554.       this.stopsonOnPress();
  1555.       this.gotoAndStop("E2");
  1556.       clearInterval(this.IntervalId);
  1557.       this.CiblesTouchees = [];
  1558.       var _loc2_ = 0;
  1559.       while(_loc2_ < this.CiblesDrag.length)
  1560.       {
  1561.          if(this.hitTest(this.CiblesDrag[_loc2_]))
  1562.          {
  1563.             _;
  1564.             this.CiblesTouchees.push(this.CiblesDrag[_loc2_]);
  1565.          }
  1566.          _loc2_ = _loc2_ + 1;
  1567.       }
  1568.       this.swapDepths(this.pDepth);
  1569.       this.ApresDrag();
  1570.       var _loc3_ = this.OnRelease();
  1571.    };
  1572.    this.onReleaseOutside = this.onRelease;
  1573. }
  1574. function InitMC_slider(p)
  1575. {
  1576.    if(p.IB != undefined)
  1577.    {
  1578.       if(p.IBrep == true)
  1579.       {
  1580.          var IBrepere = _MOD_["IBrep_" + p.IB];
  1581.       }
  1582.       else
  1583.       {
  1584.          var IBrepere = p.mc;
  1585.       }
  1586.       this.afficheIB = function()
  1587.       {
  1588.          gereTextes.afficheIB({codeIB:p.IB,mc:IBrepere});
  1589.       };
  1590.       this.masqueIB = function()
  1591.       {
  1592.          gereTextes.masqueIB();
  1593.       };
  1594.    }
  1595.    ┬º┬ºpush(this);
  1596.    ┬º┬ºpush("joueson");
  1597.    if(p.son == undefined)
  1598.    {
  1599.       ┬º┬ºpush(undefined);
  1600.    }
  1601.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1602.    ┬º┬ºpush(this);
  1603.    ┬º┬ºpush("stopson");
  1604.    if(p.son == undefined)
  1605.    {
  1606.       ┬º┬ºpush(undefined);
  1607.    }
  1608.    ┬º┬ºpop()[┬º┬ºpop()] = ┬º┬ºpop();
  1609.    var _loc6_ = p.goto != undefined ? "fleche" : "doigt";
  1610.    this.goto = p.goto;
  1611.    this.EnMouvement = false;
  1612.    if(p.sonOnMove != undefined)
  1613.    {
  1614.       this.sonOnMove = p.sonOnMove;
  1615.       this.sonOnMove_offset = p.sonOnMove_offset != undefined ? Number(p.sonOnMove_offset) : 0;
  1616.       this.sonOnMove_loopSon = p.sonOnMove_loopSon != undefined ? Number(p.sonOnMove_loopSon) : 0;
  1617.       this.jouesonOnMove = function()
  1618.       {
  1619.          joueBruitage({nomSon:this.sonOnMove,offset:this.sonOnMove_offset,loopSon:this.sonOnMove_loopSon});
  1620.       };
  1621.       this.stopsonOnMove = function()
  1622.       {
  1623.          stopBruitage({nomSon:this.sonOnMove});
  1624.       };
  1625.    }
  1626.    else
  1627.    {
  1628.       this.jouesonOnMove = undefined;
  1629.       this.stopsonOnMove = undefined;
  1630.    }
  1631.    if(p.sonOnPress != undefined)
  1632.    {
  1633.       this.sonOnPress = p.sonOnPress;
  1634.       this.sonOnPress_offset = p.sonOnPress_offset != undefined ? Number(p.sonOnPress_offset) : 0;
  1635.       this.sonOnPress_loopSon = p.sonOnPress_loopSon != undefined ? Number(p.sonOnPress_loopSon) : 0;
  1636.       this.jouesonOnPress = function()
  1637.       {
  1638.          joueBruitage({nomSon:this.sonOnPress,offset:this.sonOnPress_offset,loopSon:this.sonOnPress_loopSon});
  1639.       };
  1640.       this.stopsonOnPress = function()
  1641.       {
  1642.          stopBruitage({nomSon:this.sonOnPress});
  1643.       };
  1644.    }
  1645.    else
  1646.    {
  1647.       this.jouesonOnMove = undefined;
  1648.       this.stopsonOnMove = undefined;
  1649.    }
  1650.    this.DragZone = {left:this._x,right:this._x + p.DragZoneLargeur,top:this._y,bottom:this._y};
  1651.    this.DragZoneLargeur = p.DragZoneLargeur;
  1652.    this.DragZoneLargeur_pourcent = p.DragZoneLargeur / 100;
  1653.    this.SetPosition = function(pourcent)
  1654.    {
  1655.       this._x = this.DragZone.left + this.DragZoneLargeur_pourcent * pourcent;
  1656.    };
  1657.    this.GetPosition = function()
  1658.    {
  1659.       return (this._x - this.DragZone.left) / this.DragZoneLargeur_pourcent;
  1660.    };
  1661.    this.DetectDrag = function()
  1662.    {
  1663.       this._x = _root._xmouse - this.ecart_mousex;
  1664.       this._y = _root._ymouse - this.ecart_mousey;
  1665.       if(this._x <= this.DragZone.left)
  1666.       {
  1667.          this._x = this.DragZone.left;
  1668.       }
  1669.       if(this._y < this.DragZone.top)
  1670.       {
  1671.          this._y = this.DragZone.top;
  1672.       }
  1673.       if(this._x >= this.DragZone.right)
  1674.       {
  1675.          this._x = this.DragZone.right;
  1676.       }
  1677.       if(this._y > this.DragZone.bottom)
  1678.       {
  1679.          this._y = this.DragZone.bottom;
  1680.       }
  1681.       updateAfterEvent();
  1682.       if(this._x == this.lastx && this._y == this.lasty)
  1683.       {
  1684.          if(this.EnMouvement == true)
  1685.          {
  1686.             this.EnMouvement = false;
  1687.             this.stopsonOnMove();
  1688.          }
  1689.       }
  1690.       else if(this.EnMouvement == false)
  1691.       {
  1692.          this.EnMouvement = true;
  1693.          this.jouesonOnMove();
  1694.       }
  1695.       this.lastx = this._x;
  1696.       this.lasty = this._y;
  1697.       this.PendantSlide();
  1698.    };
  1699.    this.StartDrag = function()
  1700.    {
  1701.       this.ecart_mousex = _root._xmouse - this._x;
  1702.       this.ecart_mousey = _root._ymouse - this._y;
  1703.       this.lastx = this._x;
  1704.       this.lasty = this._y;
  1705.       this.IntervalId = setInterval(mx.utils.Delegate.create(this,this.DetectDrag),1);
  1706.    };
  1707.    this.onPress = function()
  1708.    {
  1709.       this.jouesonOnPress();
  1710.       this.masqueIB();
  1711.       this.gotoAndStop("E3");
  1712.       gereCursor("mainF");
  1713.       this.StartDrag();
  1714.       var _loc2_ = this.OnPress();
  1715.    };
  1716.    this.onRollOver = function()
  1717.    {
  1718.       this.joueson();
  1719.       this.afficheIB();
  1720.       this.gotoAndStop("E2");
  1721.       gereCursor("mainO");
  1722.       var _loc2_ = this.OnRollOver();
  1723.    };
  1724.    this.onRollOut = function()
  1725.    {
  1726.       this.stopson();
  1727.       this.stopsonOnPress();
  1728.       this.stopsonOnMove();
  1729.       this.gotoAndStop("E1");
  1730.       this.masqueIB();
  1731.       gereCursor("fleche");
  1732.       var _loc2_ = this.OnRollOut();
  1733.    };
  1734.    this.onRelease = function()
  1735.    {
  1736.       this.gotoAndStop("E2");
  1737.       clearInterval(this.IntervalId);
  1738.       this.stopson();
  1739.       this.stopsonOnPress();
  1740.       this.stopsonOnMove();
  1741.       gereCursor("mainO");
  1742.       var _loc2_ = this.OnRelease();
  1743.    };
  1744.    this.onReleaseOutside = function()
  1745.    {
  1746.       this.onRelease();
  1747.       gereCursor("fleche");
  1748.       var _loc2_ = this.OnReleaseOutside();
  1749.    };
  1750. }
  1751. function InitMC_titre(p)
  1752. {
  1753.    this.LMaVider = [];
  1754.    this.offsetx = p.offsetx != undefined ? Number(p.offsetx) : 0;
  1755.    this.offsety = p.offsety != undefined ? Number(p.offsety) : 0;
  1756.    this.ChangeTexte = function(p)
  1757.    {
  1758.       this.viderLM();
  1759.       _root.gereTextes.afficheLM({codeLM:p.codeLM,X:this._x + this.offsetx,Y:this._y + this.offsety,width:this._width,height:this._height});
  1760.       this.LMaVider.push(p);
  1761.    };
  1762.    this.viderLM = function()
  1763.    {
  1764.       var _loc3_ = 0;
  1765.       while(_loc3_ < this.LMaVider.length)
  1766.       {
  1767.          _root.gereTextes.masqueLM(this.LMaVider[_loc3_]);
  1768.          _loc3_ = _loc3_ + 1;
  1769.       }
  1770.    };
  1771. }
  1772. function initMoteur()
  1773. {
  1774.    trace(" ____ __ 111111__ _ __ _");
  1775.    var _loc5_ = this;
  1776.    var _loc6_ = _loc5_.createEmptyMovieClip("_moteur_",12354);
  1777.    this.mclR = new MovieClipLoader();
  1778.    if(_global.HOTE != undefined)
  1779.    {
  1780.       var _loc4_ = _global.gPARAMS.HOTE_DIR + "/DATA/HOTE/prod_gen/moteur.swf";
  1781.    }
  1782.    else
  1783.    {
  1784.       _loc4_ = "../../HOTE/prod_gen/moteur.swf";
  1785.    }
  1786.    this.mclR.loadClip(_loc4_,_loc6_);
  1787.    this.mclR.onLoadInit = function(myClip)
  1788.    {
  1789.       trace("_________ allooo ");
  1790.       _root.ChargeMoteur();
  1791.    };
  1792. }
  1793. stop();
  1794. this._lockroot = true;
  1795. _global._MOD_ = this;
  1796. this.CIBLE = this;
  1797. _global.stopComment = stopComment;
  1798. _global.joueSon = joueSon;
  1799. _root.creerClicZap = creerClicZap;
  1800. _global.joueBruitage = joueBruitage;
  1801. _global.gimme2digits = gimme2digits;
  1802. this.randRange = randomValue;
  1803. _global.chercheDepthPlus = chercheDepthPlus;
  1804. _global.chercheDepthMoins = chercheDepthMoins;
  1805. _global.DesactiveBZ = DesactiveBZ;
  1806. _root.DesactiveBZ = DesactiveBZ;
  1807. _global.ActiveBZ = ActiveBZ;
  1808. _root.ActiveBZ = ActiveBZ;
  1809. _global.xtraceGroups = [];
  1810. xtraceGroups.tous = 1;
  1811. xtraceGroups.doc = 1;
  1812. xtraceGroups.debug = 0;
  1813. xtraceGroups.route = 0;
  1814. xtraceGroups.error = 0;
  1815. _global.xtrace = xtrace;
  1816. _global.xtrace_raz = xtrace_raz;
  1817. _global.xlisteObj = xlisteObj;
  1818. _global.xtrace_mode = _global.xtrace_mode != undefined ? _global.xtrace_mode : "off";
  1819. _global.xlisteObj_mode = _global.xlisteObj_mode != undefined ? _global.xlisteObj_mode : "off";
  1820. this.ChargeMoteur = function(p)
  1821. {
  1822.    this.initVariables();
  1823. };
  1824. trace("XLIBBB");
  1825. this.ChargeMoteur = function(p)
  1826. {
  1827.    trace("Charge Moteur xlib");
  1828.    this.initVariables();
  1829. };
  1830. _global.LMaVider = new Array();
  1831. _global.LMaVider2 = new Array();
  1832. _global.InitMC = InitMC;
  1833. _global.InitMC_standart = InitMC_standart;
  1834. _global.InitMC_BTN = InitMC_BTN;
  1835. _global.InitMC_dragdrop = InitMC_dragdrop;
  1836. _global.InitMC_slider = InitMC_slider;
  1837. _global.InitMC_titre = InitMC_titre;
  1838. _global.IncString = IncString;
  1839. _global.DecString = DecString;
  1840. _global.GetFilePath = GetFilePath;
  1841. _global.AntiSlashToSlash = AntiSlashToSlash;
  1842. _global.str_replace = str_replace;
  1843. _global.JoindreObjets = JoindreObjets;
  1844. _global.xGetConfig = xGetConfig;
  1845. _global.GetOriginalSize = GetOriginalSize;
  1846. _global.GetOriginalHeight = GetOriginalHeight;
  1847. _global.CreerCache = CreerCache;
  1848. _global.ConvertCoord = ConvertCoord;
  1849. _global.getGlobalCoord = getGlobalCoord;
  1850. _global.getLocalCoord = getLocalCoord;
  1851. _global.length_ass = length_ass;
  1852. _global.ExplodeString = ExplodeString;
  1853. _global.BloquerActives = BloquerActives;
  1854. _global.DebloquerActives = DebloquerActives;
  1855. _global.afficheLM_x = afficheLM_x;
  1856. _global.viderLM_x = viderLM_x;
  1857. _global.afficheLM_x2 = afficheLM_x2;
  1858. _global.viderLM_x2 = viderLM_x2;
  1859. _global.xtrace_mode = "on";
  1860. _global.xlisteObj_mode = "on";
  1861. this.initVariables = function()
  1862. {
  1863.    this.gotoAndStop("INIT");
  1864.    trace({mess:"- execution du code de prod/module/init.as",group:"doc"});
  1865.    trace("init.as");
  1866. };
  1867. this.Init = function()
  1868. {
  1869.    trace(" ____ __ __ _ __ _");
  1870.    this.initMoteur();
  1871. };
  1872. this.InitOk = function()
  1873. {
  1874.    trace("InitOk");
  1875.    if(HOTE == undefined)
  1876.    {
  1877.       this.Start();
  1878.    }
  1879.    else
  1880.    {
  1881.       HOTE.InitFin(this);
  1882.    }
  1883. };
  1884. this.Start = function()
  1885. {
  1886.    gereCursor("fleche");
  1887.    this.gotoAndStop("START");
  1888.    trace("start.as");
  1889. };
  1890. if(HOTE == undefined)
  1891. {
  1892.    this.onEnterFrame = function()
  1893.    {
  1894.       var _loc2_ = this.getBytesLoaded();
  1895.       var _loc3_ = this.getBytesTotal();
  1896.       if(_loc2_ >= _loc3_)
  1897.       {
  1898.          this.Init();
  1899.          delete this.onEnterFrame;
  1900.       }
  1901.    };
  1902. }
  1903. stop();
  1904.